package cn.fl.project.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.project.dto.PrjCstNpBscInfoDTO;
import cn.fl.project.vo.PrjCstNpBscInfoVO;

 /**
 * @Description: 项目自然人客户基础信息表 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class PrjCstNpBscInfoVOTransform {


	/**
	 * DTO 转  VO
	 * @param po PrjCstNpBscInfoDTO
	 * @return PrjCstNpBscInfoVO
	 */
	public static PrjCstNpBscInfoVO toVO(PrjCstNpBscInfoDTO dto) {
		PrjCstNpBscInfoVO  vo = null;
		if (dto != null) { 
			vo = new PrjCstNpBscInfoVO();
			vo.setId(dto.getId());
			vo.setPrjId(dto.getPrjId());//项目ID
			vo.setCstId(dto.getCstId());//客户ID
			vo.setGenderCd(dto.getGenderCd());//性别（CMM0006）
			vo.setBirthday(dto.getBirthday());//生日
			vo.setMarStsCd(dto.getMarStsCd());//婚姻状况（CST0007）
			vo.setEduLvlCd(dto.getEduLvlCd());//文化程度（CST0008）
			vo.setOcpCd(dto.getOcpCd());//职业（CST0024）
			vo.setPosCd(dto.getPosCd());//职务（CST0025）
			vo.setTitCd(dto.getTitCd());//职称（CST0026）
			vo.setMp1(dto.getMp1());//手机号1
			vo.setMp2(dto.getMp2());//手机号2
			vo.setHomeTel(dto.getHomeTel());//家庭电话
			vo.setWorkTel(dto.getWorkTel());//工作单位电话
			vo.setWorkPlc(dto.getWorkPlc());//工作单位名称
			vo.setZipNo(dto.getZipNo());//通讯地址邮编
			vo.setIdAddr(dto.getIdAddr());//身份证地址
			vo.setHomeAddr(dto.getHomeAddr());//家庭地址
			vo.setPostAddr(dto.getPostAddr());//通讯地址
			vo.setWorkAddr(dto.getWorkAddr());//单位地址
			vo.setWorkYrs(dto.getWorkYrs());//从业年限
			vo.setGuarTypCd(dto.getGuarTypCd());//担保方式（PRJ0019），客户为担保人时录入
			vo.setGuarAmt(dto.getGuarAmt());//最高保证金额（元），客户为担保人时录入
			vo.setGenderCdNm(dto.getGenderCdNm());
			
			vo.setIsDel(dto.getIsDel());
			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
			vo.setIsSmallBus(dto.getIsSmallBus());//小微企业
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto PrjCstNpBscInfoVO
	 * @return PrjCstNpBscInfoDTO
	 */
	public static PrjCstNpBscInfoDTO toDTO(PrjCstNpBscInfoVO vo) {
		PrjCstNpBscInfoDTO dto = null;
		if (vo != null) {
			dto = new PrjCstNpBscInfoDTO();
			dto.setId(vo.getId());
			dto.setPrjId(vo.getPrjId());//项目ID
			dto.setCstId(vo.getCstId());//客户ID
			dto.setGenderCd(vo.getGenderCd());//性别（CMM0006）
			dto.setBirthday(vo.getBirthday());//生日
			dto.setMarStsCd(vo.getMarStsCd());//婚姻状况（CST0007）
			dto.setEduLvlCd(vo.getEduLvlCd());//文化程度（CST0008）
			dto.setOcpCd(vo.getOcpCd());//职业（CST0024）
			dto.setPosCd(vo.getPosCd());//职务（CST0025）
			dto.setTitCd(vo.getTitCd());//职称（CST0026）
			dto.setMp1(vo.getMp1());//手机号1
			dto.setMp2(vo.getMp2());//手机号2
			dto.setHomeTel(vo.getHomeTel());//家庭电话
			dto.setWorkTel(vo.getWorkTel());//工作单位电话
			dto.setWorkPlc(vo.getWorkPlc());//工作单位名称
			dto.setZipNo(vo.getZipNo());//通讯地址邮编
			dto.setIdAddr(vo.getIdAddr());//身份证地址
			dto.setHomeAddr(vo.getHomeAddr());//家庭地址
			dto.setPostAddr(vo.getPostAddr());//通讯地址
			dto.setWorkAddr(vo.getWorkAddr());//单位地址
			dto.setWorkYrs(vo.getWorkYrs());//从业年限
			dto.setGuarTypCd(vo.getGuarTypCd());//担保方式（PRJ0019），客户为担保人时录入
			dto.setGuarAmt(vo.getGuarAmt());//最高保证金额（元），客户为担保人时录入
			
			dto.setIsDel(vo.getIsDel());
			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
			dto.setGenderCdNm(vo.getGenderCdNm());
			dto.setIsSmallBus(vo.getIsSmallBus());//小微企业
		}
		return dto;
	}
	
	/**
	 * DTO集合 转 VO集合
	 * @param List<PrjCstNpBscInfoDTO>
	 * @return List<PrjCstNpBscInfoVO>
	 */
	public static List<PrjCstNpBscInfoVO> toVOList(List<PrjCstNpBscInfoDTO> list) {
		List<PrjCstNpBscInfoVO>  voList = new ArrayList<PrjCstNpBscInfoVO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (PrjCstNpBscInfoDTO dto : list) {
				voList.add(toVO(dto));
			}
		}
		return voList;
	}
	
	/**
	 * VO集合 转 DTO集合
	 * @param list List<PrjCstNpBscInfoVO>
	 * @return List<PrjCstNpBscInfoDTO>
	 */
	public static List<PrjCstNpBscInfoDTO> toDTOList(List<PrjCstNpBscInfoVO> list) {
		List<PrjCstNpBscInfoDTO>  dtoList = new ArrayList<PrjCstNpBscInfoDTO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (PrjCstNpBscInfoVO vo : list) {
				dtoList.add(toDTO(vo));
			}
		}
		return dtoList;
	}
}
